@devx-commerce/plugin-loyalty
Version:
A starter for Medusa plugins.
43 lines • 3.57 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.adminLoyaltyTransactionsRouteMiddlewares = exports.validateListTransactionsQuery = exports.listTransactionsQueryDTO = void 0;
const zod_1 = require("zod");
const error_handler_1 = require("../../../../utils/error-handler");
// Query validation schema for list transactions
exports.listTransactionsQueryDTO = zod_1.z.object({
limit: zod_1.z
.string()
.transform((val) => parseInt(val, 10))
.pipe(zod_1.z
.number()
.min(1, "Limit must be at least 1")
.max(100, "Limit cannot exceed 100"))
.optional()
.default("10"),
offset: zod_1.z
.string()
.transform((val) => parseInt(val, 10))
.pipe(zod_1.z.number().min(0, "Offset must be at least 0"))
.optional()
.default("0"),
type: zod_1.z.enum(["credit", "debit"]).optional(),
reference_type: zod_1.z
.enum(["order", "referral", "manual", "order_return", "expired"])
.optional(),
sort_by: zod_1.z
.enum(["created_at", "updated_at", "points", "type"])
.optional()
.default("created_at"),
sort_order: zod_1.z.enum(["ASC", "DESC"]).optional().default("DESC"),
});
// Middleware for query validation
exports.validateListTransactionsQuery = (0, error_handler_1.createQueryValidationMiddleware)(exports.listTransactionsQueryDTO);
// Export middleware configuration
exports.adminLoyaltyTransactionsRouteMiddlewares = [
{
matcher: "/admin/loyalty-transactions/:id",
method: "GET",
middlewares: [exports.validateListTransactionsQuery],
},
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvYWRtaW4vbG95YWx0eS10cmFuc2FjdGlvbnMvW2lkXS9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDZCQUF3QjtBQUN4QixtRUFHeUM7QUFFekMsZ0RBQWdEO0FBQ25DLFFBQUEsd0JBQXdCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMvQyxLQUFLLEVBQUUsT0FBQztTQUNMLE1BQU0sRUFBRTtTQUNSLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNyQyxJQUFJLENBQ0gsT0FBQztTQUNFLE1BQU0sRUFBRTtTQUNSLEdBQUcsQ0FBQyxDQUFDLEVBQUUsMEJBQTBCLENBQUM7U0FDbEMsR0FBRyxDQUFDLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxDQUN2QztTQUNBLFFBQVEsRUFBRTtTQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDaEIsTUFBTSxFQUFFLE9BQUM7U0FDTixNQUFNLEVBQUU7U0FDUixTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDckMsSUFBSSxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLDJCQUEyQixDQUFDLENBQUM7U0FDcEQsUUFBUSxFQUFFO1NBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQztJQUNmLElBQUksRUFBRSxPQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQzVDLGNBQWMsRUFBRSxPQUFDO1NBQ2QsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQ2hFLFFBQVEsRUFBRTtJQUNiLE9BQU8sRUFBRSxPQUFDO1NBQ1AsSUFBSSxDQUFDLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDcEQsUUFBUSxFQUFFO1NBQ1YsT0FBTyxDQUFDLFlBQVksQ0FBQztJQUN4QixVQUFVLEVBQUUsT0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7Q0FDL0QsQ0FBQyxDQUFDO0FBRUgsa0NBQWtDO0FBQ3JCLFFBQUEsNkJBQTZCLEdBQUcsSUFBQSwrQ0FBK0IsRUFDMUUsZ0NBQXdCLENBQ3pCLENBQUM7QUFFRixrQ0FBa0M7QUFDckIsUUFBQSx3Q0FBd0MsR0FBc0I7SUFDekU7UUFDRSxPQUFPLEVBQUUsaUNBQWlDO1FBQzFDLE1BQU0sRUFBRSxLQUFLO1FBQ2IsV0FBVyxFQUFFLENBQUMscUNBQTZCLENBQUM7S0FDN0M7Q0FDRixDQUFDIn0=